import { BlockType } from '@/blocks/types';

export interface CraftingRecipe {
  id: string;
  type: 'shaped' | 'shapeless';
  pattern: (BlockType | null)[][];
  result: { type: BlockType; count: number };
  shapeless?: boolean;
}

export interface CraftingResult {
  recipe: CraftingRecipe;
  canCraft: boolean;
  missingItems?: { type: BlockType; needed: number }[];
}

export type ItemGrid = (BlockType | null)[][];

export interface CraftingSlot {
  type: BlockType | null;
  count: number;
}

export type CraftingGrid = CraftingSlot[][];